package com.tqyan.service.service;

import com.tqyan.model.dto.UserDTO;
import com.tqyan.model.dto.WechatUserDTO;
import com.tqyan.model.controller.response.UserResp;

/**
 * 用户服务
 * <p> <功能详细描述> </p>
 *
 * @author 陈晨
 * @version 1.0
 * @date 2023/4/11
 */
public interface UserService {

    /**
     * @description 微信登录
     * <p> <功能详细描述> </p>
     *
     * @author 陈晨
     * @date 2023/4/11 17:34
     */
    UserResp wechatLogin(WechatUserDTO wechatUser);

    /**
     * @description 获取用户全部信息
     * <p> <功能详细描述> </p>
     *
     * @author 陈晨
     * @date 2023/4/14 13:09
     */
    UserResp getUserInfoAll(String openId);

    /**
     * @description 获取用户信息
     * <p> <功能详细描述> </p>
     *
     * @author 陈晨
     * @date 2023/4/14 13:09
     */
    UserDTO getUserInfo(String openId);

    /**
     * @description 设置会话模式
     * <p> <功能详细描述> </p>
     *
     * @author 陈晨
     * @date 2023/4/11 17:48
     */
    boolean setModel(String openId, int model);

    /**
     * @description 设置创造力
     * <p> <功能详细描述> </p>
     *
     * @author 陈晨
     * @date 2023/4/11 17:48
     */
    boolean setCreativeAbility(String openId, int creativeAbility);

    /**
     * @description 设置OpenAI Key
     * <p> <功能详细描述> </p>
     *
     * @author 陈晨
     * @date 2023/4/11 17:49
     */
    boolean setOpenAiKey(String openId, String openAiKey);

}


